1. Field of the Present Invention
The present invention generally relates to the field of data processing networks and more particularly to a system and method for facilitating console interactions in a network featuring a plurality of server appliances.
2. History of Related Art
It is becoming increasingly common to encounter data processing systems that include a farm or cluster of server appliances. For purposes of this disclosure, a server appliance is a computer system specialized to run a single server application, such as a web server or firewall. Server appliances must be able to communicate, at least occasionally, with a system administrator. The computer system console is the primary device used to interact with the system administrator. The console differs from terminal devices (sometimes referred as TTYs) in that the console is functional in virtually all modes of operation whereas systems can be configured to run without terminals in some or all operating modes. In addition, the console is one of the very first devices activated in the boot sequence so that the system administrator can observe and control system operation as early as possible.
A distinction is made here between the concept of a console interface and a console device. A console device refers to the actual hardware such as a keyboard, mouse, and video terminal, through which the majority of communication to a system administrator is provided. A console interface refers to the operating system's support of an application program interface to a console device. This interface frees the application program from having to worry about the actual hardware implementation of the console.
A characteristic of server appliances is that their operation and management are greatly simplified in comparison to general-purpose server systems. As an example, server appliances are typically operated without a console device. More specifically, the server appliance typically does not include a locally attached display, keyboard, or mouse. Unfortunately, certain situations require the system or network administrator to interact with the server appliance through the server's console interface. Accordingly, some method of accessing the server appliance console must be provided.
Referring now to FIG. 1, one common arrangement of providing console device access to server appliances in a network 100 is depicted. As depicted, a plurality of server appliances 102 are connected to each other via a network medium such as an Ethernet connection. In addition, each server appliance 102 includes a connection for a keyboard, mouse, and video terminal (or other suitable display unit). Although FIG. 1 indicates physically distinct connections for the keyboard, mouse, and video, these connections may be provided using a single cable or wire. The KVM (keyboard-video-mouse) connections from each server appliance 102 are provided to a switch 104, which is itself connected to a keyboard 106, a mouse 108, and a video terminal 110. Using the arrangement, the network administrator can transmit and receive console interactions to/from each of the server appliances 102 by appropriate setting of switch 104.
An important goal in the design of any server appliance is to minimize the cost of the system and to make it easy to set up and operate. Additionally, for systems such as the systems described herein, which are intended to be aggregated in large numbers, it is highly desirable to minimize the overall cost of the cluster by reducing or eliminating the amount of supporting hardware required.
One of the sources of cost and complexity in current server appliances is the extra cabling and switching required to provide console access to the server. This extra cabling can become a major issue in server farm environments where large numbers of server appliances are congregated together in a single rack or set of racks. Therefore, it would be highly desirable to provide a system and method for transmitting console traffic to selected server appliances without requiring additional cabling and other hardware. It would be further desirable if the implemented solution leveraged, to the extent possible, existing features of the network to minimize the cost and complexity of implementing the invention.